package com.yupi.usercenter.model.vo;

import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.metadata.BaseRowModel;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 云路供应链科技有限公司 版权所有  Copyright 2020
 *
 * @author cuibilin
 * @since Created in 2020/9/24 14:55
 */

//修改的
@Data
@ToString
@AllArgsConstructor
@NoArgsConstructor
public class ProblemExpressWoExcelVO extends BaseRowModel implements Serializable {

    /**
     * serialVersionUID
     */
    private static final long serialVersionUID = 7306053245754603718L;

    private Long id;

    @ExcelProperty(value = "工单号", index = 0)
    private String workOrderCode;

    @ExcelProperty(value = "快递运单号", index = 1)
    private String waybillNo;

    @ExcelProperty(value = "工单状态", index = 2)
    private String workOrderStatus;

    @ExcelProperty(value = "问题件一级类型名称",index = 3)
    private String problemTypeName;

    @ExcelProperty(value = "问题件二级类型名称",index = 4)
    private String problemTypeSubjectName;

    @ExcelProperty(value = "问题件原因",index = 5)
    private String problemExpressReason;

    @ExcelProperty(value = "申报网点",index = 6)
    private String applyNetworkName;

    @ExcelProperty(value = "申报编码",index = 7)
    private String applyNetworkCode;

    @ExcelProperty(value = "申报网点",index = 8)
    private String applyName;

    @ExcelProperty(value = "申报方代理区",index = 9)
    private String applyNetworkProxyName;

    @ExcelProperty(value = "申报方代理区编码",index = 10)
    private String applyNetworkProxyCode;

    @ExcelProperty(value = "责任网点",index = 11)
    private String  responsibleNetworkName;

    @ExcelProperty(value = "责任网点编码",index = 12)
    private String  responsibleNetworkCode;

    @ExcelProperty(value = "责任方代理区",index = 13)
    private String responsibleNetworkProxyName;

    @ExcelProperty(value = "责任方代理区编码",index = 14)
    private String responsibleNetworkProxyCode;

    @ExcelProperty(value = "惩罚金额",index = 15)
    private BigDecimal penaltyAmount;

    @ExcelProperty(value = "奖励金额",index = 16)
    private BigDecimal awardAmount;

    @ExcelProperty(value = "奖励网点",index = 17)
    private String awardNetworkName;

    @ExcelProperty(value = "奖励网点编码",index = 18)
    private String awardNetworkCode;

    @ExcelProperty(value = "补贴金额",index = 19)
    private BigDecimal subsidyAmount;

    @ExcelProperty(value = "补贴网点",index = 20)
    private String subsidyNetworkName;

    @ExcelProperty(value = "补贴网点编码",index = 21)
    private String subsidyNetworkCode;

    @ExcelProperty(value = "撤销原因",index = 22)
    private String applyCancelReason;

    @ExcelProperty(value = "申报时间",index = 23)
    private LocalDateTime applyTime;

    @ExcelProperty(value = "最后处理节点",index = 24)
    private String lastProcessNode;

    @ExcelProperty(value = "最后处理人",index = 25)
    private String lastProcessorName;

    @ExcelProperty(value = "客户名称",index = 26)
    private String customerName;

    @ExcelProperty(value = "客户编码",index = 27)
    private String customerCode;

    @ExcelProperty(value = "申报代理区处理意见",index = 28)
    private String  applyNetworkProcessOpinions;

    @ExcelProperty(value = "申报代理区最后处理时间",index = 29)
    private String  applyNetworkLastProcessTime;

    @ExcelProperty(value = "责任网点处理意见",index = 30)
    private String  resNetworkProcessOpinions;

    @ExcelProperty(value = "责任网点最后处理时间",index = 31)
    private String  resNetworkLastProcessTime;

    @ExcelProperty(value = "责任代理区网点处理意见",index = 32)
    private String  resProxyNetworkProcessOpinions;

    @ExcelProperty(value = "责任代理区网点最后处理时间",index = 33)
    private String  resProxyNetworkLastProcessTime;

    @ExcelProperty(value = "总部处理意见",index = 34)
    private String  hqProcessOpinions;

    @ExcelProperty(value = "修改次数",index = 35)
    private String modificationFrequency;

    @ExcelProperty(value = "完结时间",index = 36)
    private String finishTime;

    @ExcelProperty(value = "操作类型",index = 37)
    private String lastOperationType;

    @ExcelProperty(value = "完结类型",index = 38)
    private String finishType;

    @ExcelProperty(value = "寄件时间",index = 39)
    private String deliveryTime;

    @ExcelProperty(value = "寄件网点",index = 40)
    private String pickNetworkName;

    @ExcelProperty(value = "派件网点",index = 41)
    private String dispatchNetworkName;

    @ExcelProperty(value = "派件网点编码",index = 42)
    private String dispatchNetworkCode;

    @ExcelProperty(value = "签收标识",index = 43)
    private String isSign;

    @ExcelProperty(value = "签收时间",index = 44)
    private String signTime;

    @ExcelProperty(value = "内部计费重量",index = 45)
    private String packageInsideChargeWeight;

    @ExcelProperty(value = "长",index = 46)
    private String packageLength;

    @ExcelProperty(value = "宽",index = 47)
    private String packageWide;

    @ExcelProperty(value = "高",index = 48)
    private String packageHigh;


    @ExcelProperty(value = "申报网点处理意见2",index = 49)
    private String applyNetworkOpinionTwo;

    @ExcelProperty(value = "申报网点处理时间2",index = 50)
    private LocalDateTime applyNetworkTimeTwo;

    @ExcelProperty(value = "申报网点处理意见3",index = 51)
    private String applyNetworkOpinionThree;

    @ExcelProperty(value = "申报网点处理时间3",index = 52)
    private LocalDateTime applyNetworkTimeThree;

    @ExcelProperty(value = "申报代理区处理意见1",index = 53)
    private String applyNetworkProxyOpinionOne;

    @ExcelProperty(value = "申报代理区处理时间1",index = 54)
    private LocalDateTime applyNetworkProxyTimeOne;

    @ExcelProperty(value = "申报代理区处理意见2",index = 55)
    private String applyNetworkProxyOpinionTwo;

    @ExcelProperty(value = "申报代理区处理时间2",index = 56)
    private LocalDateTime applyNetworkProxyTimeTwo;

    @ExcelProperty(value = "申报代理区处理意见3",index = 57)
    private String applyNetworkProxyOpinionThree;

    @ExcelProperty(value = "申报代理区处理时间3",index = 58)
    private LocalDateTime applyNetworkProxyTimeThree;

    @ExcelProperty(value = "责任网点处理意见1",index = 59)
    private String resNetworkOpinionOne;

    @ExcelProperty(value = "责任网点处理时间1",index = 60)
    private LocalDateTime resNetworkTimeOne;

    @ExcelProperty(value = "责任网点处理意见2",index = 61)
    private String resNetworkOpinionTwo;

    @ExcelProperty(value = "责任网点处理时间2",index = 62)
    private LocalDateTime resNetworkTimeTwo;

    @ExcelProperty(value = "责任网点处理意见3",index = 63)
    private String resNetworkOpinionThree;

    @ExcelProperty(value = "责任网点处理时间3",index = 64)
    private LocalDateTime resNetworkTimeThree;

    @ExcelProperty(value = "责任代理区处理意见1",index = 65)
    private String resNetworkProxyOpinionOne;

    @ExcelProperty(value = "责任代理区处理时间1",index = 66)
    private LocalDateTime resNetworkProxyTimeOne;

    @ExcelProperty(value = "责任代理区处理意见2",index = 67)
    private String resNetworkProxyOpinionTwo;

    @ExcelProperty(value = "责任代理区处理时间2",index = 68)
    private LocalDateTime resNetworkProxyTimeTwo;

    @ExcelProperty(value = "责任代理区处理意见3",index = 69)
    private String resNetworkProxyOpinionThree;

    @ExcelProperty(value = "责任代理区处理时间3",index = 70)
    private LocalDateTime resNetworkProxyTimeThree;

    @ExcelProperty(value="剩余处理时间",index = 71)
    private String remainingTime;

    private LocalDateTime updateTime;

    private Integer status;


    @ExcelProperty(value = "原问题件一级类型名称",index = 72)
    private String oldProblemTypeName;

    @ExcelProperty(value = "原问题件二级类型名称",index = 73)
    private String oldProblemTypeSubjectName;


    /**
     * 登记时间
     **/
    @ExcelProperty(value="注册时间",index = 72)
    private String registrationTime;

    @ExcelProperty(value = "申报网点管理大区编码")
    private String applyNetworkMrCode;

    @ExcelProperty(value = "申报网点管理大区名称")
    private String applyNetworkMrName;

    @ExcelProperty(value = "责任网点管理大区编码")
    private String respNetworkMrCode;

    @ExcelProperty(value = "责任网点管理大区名称")
    private String respNetworkMrName;

    //问题件来源
    private String workOrderSourceStr;

    /**
     * 结案后的工单责任网点和工单状态已审核时责任网点是否一致
     * 1 是 2 否
     */
    @ExcelProperty(value = "修改责任网点是否一致")
    private String consistentStatus;

    @ExcelProperty(value = "物品类型")
    private String goodsTypeName;

}
